home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-08-10 | 12.8 KB | 270 lines | [TEXT/MPS ] |
- (*
- File: AEObjects.mod
-
- Contains: AppleEvents Interfaces.
-
- Version: Technology: System 7.5
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs.applelink.apple.com
- AppleLink: APPLE.BUGS
-
- *)
-
- (*$TAGS-*)
- (*$CALLING PASCAL*)
- MODULE AEObjects;
-
- IMPORT SYSTEM, Types, AppleEvents;
-
- (* $PUSH*)
- (* $ALIGN MAC68K*)
- (* $LibExport+*)
-
- CONST
- kAEAND* = LONG("AND "); (* 0x414e4420 *)
- kAEOR* = LONG("OR "); (* 0x4f522020 *)
- kAENOT* = LONG("NOT "); (* 0x4e4f5420 *)
- (**** ABSOLUTE ORDINAL CONSTANTS ****)
- kAEFirst* = LONG("firs"); (* 0x66697273 *)
- kAELast* = LONG("last"); (* 0x6c617374 *)
- kAEMiddle* = LONG("midd"); (* 0x6d696464 *)
- kAEAny* = LONG("any "); (* 0x616e7920 *)
- kAEAll* = LONG("all "); (* 0x616c6c20 *)
- (**** RELATIVE ORDINAL CONSTANTS ****)
- kAENext* = LONG("next"); (* 0x6e657874 *)
- kAEPrevious* = LONG("prev"); (* 0x70726576 *)
- (**** KEYWORD CONSTANT ****)
- keyAECompOperator* = LONG("relo"); (* 0x72656c6f *)
- keyAELogicalTerms* = LONG("term"); (* 0x7465726d *)
- keyAELogicalOperator* = LONG("logc"); (* 0x6c6f6763 *)
- keyAEObject1* = LONG("obj1"); (* 0x6f626a31 *)
- keyAEObject2* = LONG("obj2"); (* 0x6f626a32 *)
- (* ... for Keywords for getting fields out of object specifier records. *)
- keyAEDesiredClass* = LONG("want"); (* 0x77616e74 *)
- keyAEContainer* = LONG("from"); (* 0x66726f6d *)
- keyAEKeyForm* = LONG("form"); (* 0x666f726d *)
- keyAEKeyData* = LONG("seld");
-
- (* ... for Keywords for getting fields out of Range specifier records. *)
- keyAERangeStart* = LONG("star"); (* 0x73746172 *)
- keyAERangeStop* = LONG("stop"); (* 0x73746f70 *)
- (* ... special handler selectors for OSL Callbacks. *)
- keyDisposeTokenProc* = LONG("xtok"); (* 0x78746f6b *)
- keyAECompareProc* = LONG("cmpr"); (* 0x636d7072 *)
- keyAECountProc* = LONG("cont"); (* 0x636f6e74 *)
- keyAEMarkTokenProc* = LONG("mkid"); (* 0x6d6b6964 *)
- keyAEMarkProc* = LONG("mark"); (* 0x6d61726b *)
- keyAEAdjustMarksProc* = LONG("adjm"); (* 0x61646a6d *)
- keyAEGetErrDescProc* = LONG("indc");
-
- (**** VALUE and TYPE CONSTANTS ****)
- (* ... possible values for the keyAEKeyForm field of an object specifier. *)
- formAbsolutePosition* = LONG("indx"); (* 0x696e6478 *)
- formRelativePosition* = LONG("rele"); (* 0x72656c65 *)
- formTest* = LONG("test"); (* 0x74657374 *)
- formRange* = LONG("rang"); (* 0x72616e67 *)
- formPropertyID* = LONG("prop"); (* 0x70726f70 *)
- formName* = LONG("name"); (* 0x6e616d65 *)
- (* ... relevant types (some of these are often pared with forms above). *)
- typeObjectSpecifier* = LONG("obj "); (* 0x6f626a20 *)
- typeObjectBeingExamined* = LONG("exmn"); (* 0x65786d6e *)
- typeCurrentContainer* = LONG("ccnt"); (* 0x63636e74 *)
- typeToken* = LONG("toke"); (* 0x746f6b65 *)
- typeRelativeDescriptor* = LONG("rel "); (* 0x72656c20 *)
- typeAbsoluteOrdinal* = LONG("abso"); (* 0x6162736f *)
- typeIndexDescriptor* = LONG("inde"); (* 0x696e6465 *)
- typeRangeDescriptor* = LONG("rang"); (* 0x72616e67 *)
- typeLogicalDescriptor* = LONG("logi"); (* 0x6c6f6769 *)
- typeCompDescriptor* = LONG("cmpd"); (* 0x636d7064 *)
- typeOSLTokenList* = LONG("ostl");
-
- (* Possible values for flags parameter to AEResolve. They're additive *)
- kAEIDoMinimum* = $0000;
- kAEIDoWhose* = $0001;
- kAEIDoMarking* = $0004;
- kAEPassSubDescs* = $0008;
- kAEResolveNestedLists* = $0010;
- kAEHandleSimpleRanges* = $0020;
- kAEUseRelativeIterators* = $0040;
-
- (**** SPECIAL CONSTANTS FOR CUSTOM WHOSE-CLAUSE RESOLUTION *)
- typeWhoseDescriptor* = LONG("whos"); (* 0x77686f73 *)
- formWhose* = LONG("whos"); (* 0x77686f73 *)
- typeWhoseRange* = LONG("wrng"); (* 0x77726e67 *)
- keyAEWhoseRangeStart* = LONG("wstr"); (* 0x77737472 *)
- keyAEWhoseRangeStop* = LONG("wstp"); (* 0x77737470 *)
- keyAEIndex* = LONG("kidx"); (* 0x6b696478 *)
- keyAETest* = LONG("ktst");
-
- (**
- used for rewriting tokens in place of LONG("ccnt") descriptors
- This record is only of interest to those who, when they...
- ...get ranges as key data in their accessor procs, choose
- ...to resolve them manually rather than call AEResolve again.
- **)
-
- TYPE
- ccntTokenRecord* = RECORD
- tokenClass*: AppleEvents.DescType;
- token*: AppleEvents.AEDesc;
- END;
-
- ccntTokenRecPtr* = POINTER TO ccntTokenRecord;
- ccntTokenRecHandle* = HANDLE TO ccntTokenRecord (*ΔΔ POINTER TO ccntTokenRecPtr*);
-
- DescPtr* = POINTER TO AppleEvents.AEDesc;
- DescHandle* = HANDLE TO AppleEvents.AEDesc (*ΔΔ POINTER TO DescPtr*);
-
- (* typedefs providing type checking for procedure pointers* *)
- OSLAccessorProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (desiredClass: AppleEvents.DescType; (*CONST*)VAR container: AppleEvents.AEDesc; containerClass: AppleEvents.DescType; form: AppleEvents.DescType; (*CONST*)VAR selectionData: AppleEvents.AEDesc; value: DescPtr; accessorRefcon: LONGINT): Types.OSErr;
- OSLCompareProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (oper: AppleEvents.DescType; (*CONST*)VAR obj1: AppleEvents.AEDesc; (*CONST*)VAR obj2: AppleEvents.AEDesc; VAR result: BOOLEAN): Types.OSErr;
- OSLCountProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (desiredType: AppleEvents.DescType; containerClass: AppleEvents.DescType; (*CONST*)VAR container: AppleEvents.AEDesc; VAR result: LONGINT): Types.OSErr;
- OSLDisposeTokenProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (unneededToken: DescPtr): Types.OSErr;
- OSLGetMarkTokenProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE ((*CONST*)VAR dContainerToken: AppleEvents.AEDesc; containerClass: AppleEvents.DescType; result: DescPtr): Types.OSErr;
- OSLGetErrDescProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (VAR appDescPtr: DescPtr): Types.OSErr;
- OSLMarkProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE ((*CONST*)VAR dToken: AppleEvents.AEDesc; (*CONST*)VAR markToken: AppleEvents.AEDesc; index: LONGINT): Types.OSErr;
- OSLAdjustMarksProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (newStart: LONGINT; newStop: LONGINT; (*CONST*)VAR markToken: AppleEvents.AEDesc): Types.OSErr;
- OSLAccessorUPP* = Types.UniversalProcPtr;
- OSLCompareUPP* = Types.UniversalProcPtr;
- OSLCountUPP* = Types.UniversalProcPtr;
- OSLDisposeTokenUPP* = Types.UniversalProcPtr;
- OSLGetMarkTokenUPP* = Types.UniversalProcPtr;
- OSLGetErrDescUPP* = Types.UniversalProcPtr;
- OSLMarkUPP* = Types.UniversalProcPtr;
- OSLAdjustMarksUPP* = Types.UniversalProcPtr;
-
- CONST
- uppOSLAccessorProcInfo* = $000FFFE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param, 4 byte param, 4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
- uppOSLCompareProcInfo* = $00003FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
- uppOSLCountProcInfo* = $00003FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
- uppOSLDisposeTokenProcInfo* = $000000E0; (* PROCEDURE (4 byte param): 2 byte result; *)
- uppOSLGetMarkTokenProcInfo* = $00000FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
- uppOSLGetErrDescProcInfo* = $000000E0; (* PROCEDURE (4 byte param): 2 byte result; *)
- uppOSLMarkProcInfo* = $00000FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
- uppOSLAdjustMarksProcInfo* = $00000FE0; (* PROCEDURE (4 byte param, 4 byte param, 4 byte param): 2 byte result; *)
-
- PROCEDURE NewOSLAccessorProc*(userRoutine: OSLAccessorProcPtr): OSLAccessorUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLCompareProc*(userRoutine: OSLCompareProcPtr): OSLCompareUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLCountProc*(userRoutine: OSLCountProcPtr): OSLCountUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLDisposeTokenProc*(userRoutine: OSLDisposeTokenProcPtr): OSLDisposeTokenUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLGetMarkTokenProc*(userRoutine: OSLGetMarkTokenProcPtr): OSLGetMarkTokenUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLGetErrDescProc*(userRoutine: OSLGetErrDescProcPtr): OSLGetErrDescUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLMarkProc*(userRoutine: OSLMarkProcPtr): OSLMarkUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewOSLAdjustMarksProc*(userRoutine: OSLAdjustMarksProcPtr): OSLAdjustMarksUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE CallOSLAccessorProc*(desiredClass: AppleEvents.DescType; (*CONST*)VAR container: AppleEvents.AEDesc; containerClass: AppleEvents.DescType; form: AppleEvents.DescType; (*CONST*)VAR selectionData: AppleEvents.AEDesc; value: DescPtr; accessorRefcon: LONGINT; userRoutine: OSLAccessorUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLCompareProc*(oper: AppleEvents.DescType; (*CONST*)VAR obj1: AppleEvents.AEDesc; (*CONST*)VAR obj2: AppleEvents.AEDesc; VAR result: BOOLEAN; userRoutine: OSLCompareUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLCountProc*(desiredType: AppleEvents.DescType; containerClass: AppleEvents.DescType; (*CONST*)VAR container: AppleEvents.AEDesc; VAR result: LONGINT; userRoutine: OSLCountUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLDisposeTokenProc*(unneededToken: DescPtr; userRoutine: OSLDisposeTokenUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLGetMarkTokenProc*((*CONST*)VAR dContainerToken: AppleEvents.AEDesc; containerClass: AppleEvents.DescType; result: DescPtr; userRoutine: OSLGetMarkTokenUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLGetErrDescProc*(VAR appDescPtr: DescPtr; userRoutine: OSLGetErrDescUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLMarkProc*((*CONST*)VAR dToken: AppleEvents.AEDesc; (*CONST*)VAR markToken: AppleEvents.AEDesc; index: LONGINT; userRoutine: OSLMarkUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallOSLAdjustMarksProc*(newStart: LONGINT; newStop: LONGINT; (*CONST*)VAR markToken: AppleEvents.AEDesc; userRoutine: OSLAdjustMarksUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE AEObjectInit*(): Types.OSErr;
- EXTERNAL PASCAL;
- (* Not done by inline, but by direct linking into code. It sets up the pack
- such that further calls can be via inline *)
- PROCEDURE AESetObjectCallbacks*(myCompareProc: OSLCompareUPP; myCountProc: OSLCountUPP; myDisposeTokenProc: OSLDisposeTokenUPP; myGetMarkTokenProc: OSLGetMarkTokenUPP; myMarkProc: OSLMarkUPP; myAdjustMarksProc: OSLAdjustMarksUPP; myGetErrDescProcPtr: OSLGetErrDescUPP): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0E35, $A816;
- (*$END*)
- PROCEDURE AEResolve*((*CONST*)VAR objectSpecifier: AppleEvents.AEDesc; callbackFlags: INTEGER; theToken: DescPtr): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0536, $A816;
- (*$END*)
- PROCEDURE AEInstallObjectAccessor*(desiredClass: AppleEvents.DescType; containerType: AppleEvents.DescType; theAccessor: OSLAccessorUPP; accessorRefcon: LONGINT; isSysHandler: BOOLEAN): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0937, $A816;
- (*$END*)
- PROCEDURE AERemoveObjectAccessor*(desiredClass: AppleEvents.DescType; containerType: AppleEvents.DescType; theAccessor: OSLAccessorUPP; isSysHandler: BOOLEAN): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0738, $A816;
- (*$END*)
- PROCEDURE AEGetObjectAccessor*(desiredClass: AppleEvents.DescType; containerType: AppleEvents.DescType; VAR accessor: OSLAccessorUPP; VAR accessorRefcon: LONGINT; isSysHandler: BOOLEAN): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0939, $A816;
- (*$END*)
- PROCEDURE AEDisposeToken*(theToken: DescPtr): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $023A, $A816;
- (*$END*)
- PROCEDURE AECallObjectAccessor*(desiredClass: AppleEvents.DescType; (*CONST*)VAR containerToken: AppleEvents.AEDesc; containerClass: AppleEvents.DescType; keyForm: AppleEvents.DescType; (*CONST*)VAR keyData: AppleEvents.AEDesc; token: DescPtr): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $303C, $0C3B, $A816;
- (*$END*)
-
- (* $ALIGN RESET*)
- (* $POP*)
-
- END AEObjects.
-